home *** CD-ROM | disk | FTP | other *** search
/ OpenGL Superbible (2nd Edition) / OpenGL SuperBible e2.iso / tools / OpenGL / OPENGL2.EXE / _SETUP.1 / index_func.spec < prev    next >
Encoding:
Text File  |  1997-10-31  |  3.3 KB  |  119 lines

  1. XXX - Not complete yet!!!
  2.  
  3. Name
  4.  
  5.     EXT_index_func
  6.  
  7. Name Strings
  8.  
  9.     GL_EXT_index_func
  10.  
  11. Version
  12.  
  13.     $Date: 1997/07/22 21:00:55 $ $Revision: 1.1 $
  14.  
  15. Number
  16.  
  17.     95
  18.  
  19. Dependencies
  20.  
  21.     None
  22.  
  23. Overview
  24.  
  25.     This extension provides a way to discard fragments when a comparison
  26.     between the fragment's index value and a reference index fails.  This
  27.     may be used similarly to the alpha test which is available in RGBA mode.
  28.  
  29. New Procedures and Functions
  30.  
  31.     void IndexFuncEXT (enum func, float ref)
  32.  
  33. New Tokens
  34.  
  35.     Accepted by the <cap> parameter of Enable, Disable, and IsEnabled,
  36.     and by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv,
  37.     and GetDoublev:
  38.  
  39.     INDEX_TEST_EXT
  40.  
  41.     Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
  42.     GetFloatv, and GetDoublev:
  43.  
  44.     INDEX_TEST_FUNC_EXT
  45.     INDEX_TEST_REF_EXT
  46.  
  47. Additions to Chapter 2 of the 1.1 Specification (OpenGL Operation)
  48.  
  49.     None
  50.  
  51. Additions to Chapter 3 of the 1.1 Specification (Rasterization)
  52.  
  53.     None
  54.  
  55. Additions to Chapter 4 of the 1.1 Specification (Per-Fragment Operations
  56. and the Frame Buffer)
  57.  
  58.     A new section is added immediately following section 4.1.3 Alpha Test.
  59.  
  60.     Index Test
  61.  
  62.     This step applies only to color index mode.  The index test discards
  63.     a fragment conditional on the outcome of a comparison between the
  64.     incoming fragment's index value and a constant reference value.  The
  65.     comparison is enabled or disabled with the generic Enable and Disable
  66.     commands using the symbolic constant INDEX_TEST_EXT.  When disabled,
  67.     it is as if the comparison always passes.  The test is controlled with
  68.  
  69.     void IndexFunc (enum func, float ref);
  70.     
  71.     <func> is a symbolic constant indicating the index test function; <ref>
  72.     is a reference value.  <ref> is converted to a fixed-point value
  73.     according to the rules given for a color index in section 2.13.9.  For
  74.     purposes of the index test, the fragment's index value is also rounded
  75.     to the nearest integer representable in the color index portion of the
  76.     framebuffer.  The possible constants specifying the test function are
  77.     NEVER, ALWAYS, LESS, LEQUAL, EQUAL, GEQUAL, GREATER, or NOTEQUAL,
  78.     meaning pass the fragment never, always, if the fragment's index value
  79.     is less than, less than or equal to, equal to, greater than, or not
  80.     equal to the reference value, respectively.
  81.  
  82. Additions to Chapter 5 of the 1.1 Specification (Special Functions)
  83.  
  84.     None
  85.  
  86. Additions to Chapter 6 of the 1.1 Specification (State and State Requests)
  87.  
  88.     None
  89.  
  90. Additions to the GLX Specification
  91.  
  92.     XXX - Not complete yet!!!
  93.  
  94. GLX Protocol
  95.  
  96.     XXX - Not complete yet!!!
  97.  
  98. Errors
  99.  
  100.     INVALID_ENUM is generated if the <func> parameter of IndexFuncEXT
  101.     is not one of NEVER, ALWAYS, LESS, LEQUAL, EQUAL, GEQUAL, GREATER, or
  102.     NOTEQUAL.
  103.  
  104.     INVALID_OPERATION is generated if IndexFuncEXT is called between
  105.     execution of Begin and corresponding execution of End.
  106.  
  107. New State
  108.                                 Initial
  109.     Get Value                Get Command    Type    Value    Attrib
  110.     ---------                -----------    ----    -------    ------
  111.  
  112.     INDEX_TEST_EXT            IsEnabled    B    False    color-buffer/enable
  113.     INDEX_TEST_FUNC_EXT            GetFloatv    Z8    ALWAYS    color-buffer
  114.     INDEX_TEST_REF_EXT            GetFloatv    R    0    color-buffer
  115.  
  116. New Implementation Dependent State
  117.  
  118.     None
  119.